Color matrixing is a common image data processing operation that is used to either improve the color reproduction of images or to perform space transformations. A color space transformation matrix is used, for example, to convert red, green and blue image signals (RGB) into luminance (Y) and chrominance (R-Y, B-Y) image signals. A color correction matrix can also be used to correct the spectral sensitivities of image sensors for the chromaticities of the phosphor set of a particular display device or to correct film colorimetry for video display in film-to-video conversion operations.
Most matrixing devices are designed to perform a 3.times.3 matrixing operation on three parallel input components (RGB) in order to compute three parallel output components (YIQ). The three components of color image data, however, are sometimes provided sequentially rather than in parallel. Film scanning systems that employ trilinear electronic sensor devices, for example, often generate sequential red, green and blue output components. The sequential output components require a 1.times.4 matrix to be performed sequentially three times to achieve a sequential 3.times.4 matrix operation.
In addition to parallel and sequential matrixing operations, other data processing operations, including 2-D convolution operations and filtering with finite impulse response filters (FIR), are commonly employed on color image data to enhance the sharpness of images reproduced from the image data. In order to reduce costs, conserve space and improve processing efficiency, it is desirable to implement all four of the image data processing operations described above within a single integrated circuit device or chip having the capability of performing the data processing operations in real time. It is therefore an object of the invention to provide a single integrated circuit device that is capable of selectively functioning in real time as either a multiple sequential matrix multiplier, a parallel matrix multiplier, a 2-D convolver or a FIR filter in order to process image data, as well as to provide system related functions of loading and verifying look-up-tables (LUTs) used in a color space conversion system.